Import "mocloud.lua"

// 请把 Plugin/mocloud.lua 复制到按键精灵手机版安装的位置下,
// 如 C:\Program Files (x86)\按键精灵\按键精灵手机助手\Plugin

Dim username = "18888888888"                           '用户名
Dim password = "123456"                                '用户密码
Dim typeid = "3040"                                    '类型ID
Dim dev_id = "1"                                       '开发者账户ID
Dim filepath = GetSdcardDir() & "/Pictures/1.png"      '图片路径

// --------------------------
// -------- 识别请求 --------
// --------------------------
Dim ResultJson
Dim Hash            //识别hash
Dim Result          //识别结果
Dim imgBase64Data

// 此处打印文件目录，从而定位图片的位置
TracePrint "图片路径：",filepath

TracePrint "开始截图"
SnapShot filepath, 100, 100, 300, 300
Delay 1000

TracePrint "截图成功，开始读图片"

// 读取文件夹下的图片内容，返回的是base64图片此处也可以截图数据
imgBase64Data = mocloud.GetImage(filepath)
Delay 1000

TracePrint "图片数据：",left(imgBase64Data,50),"..."

TracePrint "开始上传图片"

// 图片base64数据，需要urlEncode
Dim postData= "user=" & username & "&pass=" & password & "&act=image&type=shibie&dev_id=" & dev_id & "&typeid=" & typeid & "&image=" & mocloud.urlEncode(imgBase64Data)

ResultJson = URL.Post("http://ocr.xinby.cn/api.php", postData, 100)

TracePrint ResultJson

Dim ResultTbl=Encode.JsonToTable(ResultJson)

If ResultTbl Then
If ResultTbl["code"] = 1 Then
Hash = ResultTbl["data"]["hash"]
Result = ResultTbl["data"]["result"]
TracePrint "识别结果: ", Result
TracePrint "Hash: ", Hash
Else
TracePrint "识别失败, 原因: ", ResultTbl["errmsg"]
End If
Else
TracePrint "HTTP请求发送失败"
End If

// --------------------------
// -------- 识别报错 --------
// --------------------------
//Dim postErrorReportData= "user=" & username & "&pass=" & password & "act=image&type=baocuo&dev_id=" & dev_id & "&hash=" & Hash
//Dim ResultReportErrorJson = URL.Post("http://ocr.xinby.cn/api.php", postErrorReportData,100)

//TracePrint ResultReportErrorJson
//Dim ResultReportErrorTbl=Encode.JsonToTable(ResultReportErrorJson)
//
//If ResultReportErrorTbl Then
//    If ResultReportErrorTbl["code"] = 1 Then
//        TracePrint "报错成功"
//    Else
//        TracePrint "报错失败, 原因: ", ResultReportErrorTbl["errmsg"]
//    End If
//Else
//    TracePrint "HTTP请求发送失败"
//End If


// --------------------------
// -------- 账户信息 --------
// --------------------------
Dim postUserInfoData="user=" & username & "&pass=" & password & "&act=login"

Dim ResultInfoJson = URL.Post("http://ocr.xinby.cn/api.php", postUserInfoData,100)

TracePrint ResultInfoJson

Dim ResultInfoTbl=Encode.JsonToTable(ResultInfoJson)

If ResultInfoTbl Then
If ResultInfoTbl["code"] = 1 Then
TracePrint "用户积分: ", ResultInfoTbl["data"]["bp"]
Else
TracePrint "查询失败, 原因: ", ResultInfoTbl["errmsg"]
End If
Else
TracePrint "HTTP请求发送失败"
End If
